package com.ia2014.tp.portal2.entities;

import javax.persistence.DiscriminatorValue;
import javax.persistence.Entity;
import javax.persistence.Transient;

import com.ia2014.tp.portal2.vo.ModuloVO;
import com.ia2014.tp.portal2.vo.ModuloDepositoVO;
import com.ia2014.tp.portal2.enums.ModulosEnum;

/**
 * Representa un Modulo del Tipo Deposito
 * @author Ignacio Iljin
 *
 */
@Entity
@DiscriminatorValue("deposito")
public class ModuloDeposito extends Modulo{

	public ModuloDeposito() {
		// TODO Auto-generated constructor stub
	}

	@Transient
	@Override
	public ModuloDepositoVO getVO() {
		ModuloDepositoVO moduloDepositoVO = (ModuloDepositoVO) super.getVO();
		
		return moduloDepositoVO;
	}

	@Transient
	@Override
	public void setVO(ModuloVO abstractVO) {
		
		ModuloDepositoVO moduloDepositoVO = abstractVO.getModuloDepositoVO();
		
		super.setVO(moduloDepositoVO);
		
	}

	@Transient
	@Override
	protected ModuloDepositoVO getVOInstance() {
		
		return new ModuloDepositoVO();
	}

	@Transient
	@Override
	public boolean isModuloDeposito() {
		// TODO Auto-generated method stub
		return true;
	}

	@Transient
	@Override
	public boolean isModuloPortal() {
		// TODO Auto-generated method stub
		return false;
	}

	@Transient
	@Override
	public boolean isModuloDespacho() {
		// TODO Auto-generated method stub
		return false;
	}

	@Transient
	@Override
	public boolean isModuloLogistica() {
		// TODO Auto-generated method stub
		return false;
	}
	
	@Transient
	@Override
	public ModulosEnum getTipoModulo() {
		// TODO Auto-generated method stub
		return ModulosEnum.DEPOSITO;
	}
}
